6.10 重新修改索引标签
DateFrame表格都有行、列索引,如果要修改其中某些索引标签,可以使用df.rename()
函数,结构如下:
df.rename(mapper=None,index=None,columns=None,axis=None,copy=None,inplace=False,level=None,errors=”ingore”)
mapper :指定要修改索引标签的数据,可以是字典方式,也可以是函数方式。
Index :如果index=0就可以index=mapper形式修改行索引标签;
Columns :如果columns=1就可以columns=mapper形式修改列索引标签;
axis :指定索引的方式,修改地行索引为0,修改列方向为1;
copy :如果为True,则复制基础数据;
inplace :如果为True,则在原DateFrame中进行更改
level :用于具有分层索引的情况下指定层级
errors :对不存在标签名的处理方式,有ingore和raise两个值,默认为ingore
import pandas as pd
df=pd.read_excel(r "D:\Pyobject2023\object\测试\素材\测试素材.重新修改索引标签.xlsx" , index_col =[ 0,1 ])
print (df)
# df=df.rename(mapper={"理论":"文化","实操":"实训"},axis=1)
df=df.rename(columns={ "理论":"文化","实操":"实训" }) #等同上行
df=df.rename(index={ "杨麻子":"许麻子" }, level = 1 )
print (df)
返回:
理论 | 实操 | ||
---|---|---|---|
班别 | 姓名 | ||
A班 | 张三 | 89 | 87 |
李四 | 68 | 56 | |
杨麻子 | 23 | 12 | |
B班 | 小新 | 98 | 88 |
小曾 | 79 | 86 |
文化 | 实训 | ||
---|---|---|---|
班别 | 姓名 | ||
A班 | 张三 | 89 | 87 |
李四 | 68 | 56 | |
许麻子 | 23 | 12 | |
B班 | 小新 | 98 | 88 |
小曾 | 79 | 86 |
import pandas as pd
df=pd.read_excel(r" D:\Pyobject2023\object\测试\素材\测试素材.重新修改索引标签.xlsx" , index_col =[ 0,1 ])
df=df.rename(mapper= lambda t:t+str(len(t)), level = 1 )
print (df)
返回:
理论 | 实操 | ||
---|---|---|---|
班别 | 姓名 | ||
A班 | 张三2 | 89 | 87 |
李四2 | 68 | 56 | |
杨麻子3 | 23 | 12 | |
B班 | 小新2 | 98 | 88 |
小曾2 | 79 | 86 |